スケッチッチャーワークベンチ(Sketcher)で、他のワークベンチで利用するための2Dスケッチを作成できます。2Dスケッチは多くのCADモデルの出発点であり、通常は3D形状を作成するための断面形状(プロファイル)や軌道(パス)を定義します。モデルは、最終的な形状を作り上げるために複数のスケッチに依存する場合があります。
パートワークベンチで定義されるブーリアン操作と組み合わせることで、スケッチッチャーワークベンチは、空間領域構成法(CSG)によるソリッド構築手法の重要な要素となります。2Dスケッチは、そのままブーリアン演算に利用されたり、他の操作の基礎として用いられたりすることで、CSGプロセス全体において中核的な役割を果たします。また、
パートデザインワークベンチの操作とも連携し、ソリッド作成における特徴の編集手法の基本的な構成要素となります。さらに、多くの他のワークベンチでもスケッチが活用されています。
スケッチャーの特徴はなんといっても拘束です。これによって2次元形状を、長さ、角度、(水平、垂直、直角、といった形状間の)関係性などの条件に厳密に従って拘束することが可能です。また拘束用ソルバーによって2次元形状の拘束範囲を計算したり、スケッチの自由度を対話的にチェックしたりすることが可能です。
スケッチャーは2D製図のためのものではありません。スケッチをもとにソリッド形状を作成すると、スケッチは自動的に非表示になります。拘束条件はスケッチの編集モード時のみ表示されます。もし単に2D図面を印刷したく、2D図面から3Dのモデルを作るのではないのであれば、ドラフトワークベンチの利用を検討してください。
完全に拘束されたスケッチ
拘束は、オブジェクトの自由度を制限するために使用されます。例えば、線分は拘束がない場合は4つの自由度(あるいは「DoF」と略されます)を持ちます。つまり水平方向、垂直方向への移動と拡大縮小と回転が可能です。
水平拘束、垂直拘束、あるいは(他のラインか座標軸の一つに対する)角度拘束を適用すると回転が制限され自由度は3つに減ります。片方の短点を原点に対してロックすることでさらに2つの自由度が減ります。最後にサイズ拘束を適用すれば最後の自由度が無くなります。こうしてラインは完全拘束状態になります。
複数のオブジェクトがある場合は相互に拘束が可能です。2本の線分があった場合、点一致拘束を使用することでそれぞれの端点をつなぎ合わせることができます。また2本のラインの間の角度を設定したり、2本のラインが垂直になるよう設定することも可能です。線分を円弧や円の接線となるように拘束することもできます。このように様々な種類の拘束があります。スケッチを拘束するのには複数のやり方があることが通常です。そのような複雑なスケッチが完全拘束になったとは、実際に与えた拘束条件によって、可能なやり方の一つが完成した、というふうに考えられます。
拘束には二種類あります。幾何拘束と寸法拘束です。これらについては下のツールで詳しく説明します。
寸法拘束(制約型)が作成され、かつ寸法拘束を作る際に寸法を聞く 設定が選択されていると(デフォルト)、ダイアログが開き寸法を編集できます。
値あるいは数式を寸法として入力できます。他の数式からその拘束の値を参照するために、名前を付与することもできます。参照チェックボックスをチェックすることで、拘束条件を参照型(参照型拘束は、実際には図形を拘束せず、単に寸法を表示するだけのもの)に変更することもできます。
次のいずれかの方法で寸法拘束の値を編集できます。
3Dビュー中の寸法拘束は、ドラッグすることで位置を変更できます。表示されている寸法拘束の値の上でマウスに左ボタンをおして動かします。幾何拘束のシンボルの表示位置は自動的に決まるので、移動できません。
作成したスケッチを、ソリッドな部品を作成するための特徴として使う場合、下記のルールに合致している必要があります。
これらのルールは、(デフォルトでは青で示される)補助線には適用しません。補助線は編集モード以外では表示されません。あるいは、スケッチを(ソリッドな部品を作る以外の)別の目的で作るときも関係ありません。スケッチを特徴として利用する際、ワークベンチやツールによっては、更に追加の条件がある場合があります。
スケッチッチャーワークベンチの各ツールは、スケッチメニューやツールバーからアクセスできます。introduced in 0.21: ほとんどすべてのスケッチッチャーワークベンチのツールバーは、スケッチが編集モードのときにだけ表示されます。例外は、スケッチャー・ツールバーで、これはスケッチが編集モードでないときのみ表示されます。
いくつかのツールは、スケッチが編集モードの時に、3Dビューのコンテキスト・メニュー、あるいはスケッチャー・ダイアログのコンテキスト・メニューからアクセスできます。
introduced in 0.21: スケッチが編集モードにある場合、構造体ツールバーは非表示になります。これは、このツールバー上のツールがすべて編集モードでは使用できないためです。
以下は図形を作成するためのツールです。
以下は拘束を作成するためのツールです。いくつかの拘束には、付随拘束の使用が必要です。
スケッチ・ワークベンチには、図形を作成し拘束を適用する際に役立つ、支援ツール等の様々な機能があります。
連続モードには2つの種類があります。図形作成「連続モード」と拘束作成「連続モード」です。設定においてこれらをチェック(デフォルト)している場合、図形作成後、ツールが自動的に再起動します。連続モードを抜けるにはEscキーを押すか、右マウスボタンをクリックしてください。すでに図形作成連続モードが何らかの入力を受け付けている場合は、Escを何回か押す必要があります。 また、別の図形の作成や拘束の作成を開始すれば、直前の連続モードから抜けます。どのツールも起動されていない状況でEscを押すと、スケッチ編集モードから抜けてしまうことに注意してください。もし期せずにEscを度々押してしまうようであれば、設定のEscでスケッチ編集モードを終了するのチェックを外してください。
スケッチ編集で自動拘束(Auto constraints) が有効(デフォルト)の場合、拘束条件が自動的に適用されます。カーソルが正しい位置にあると、システムが自動で提案する拘束条件のアイコンをカーソルの横に表示します。この状態で左クリックすると、その拘束条件が適用されます。自動拘束条件を付与するのかどうかは、各スケッチごとスケッチ・ワークベンチ・ダイアログで変更するか、設定でスケッチの ビューAutoconstraints プロパティをで変更することで設定を調整できます。
以下の拘束が自動的に適用されます。
グリッド線、グリッド線の交点、図形のエッジ、線分や円弧の中点、特定の角度にスナップさせることが可能です。スナップ自体は拘束条件を生成しません。例えば、自動拘束条件付与を有効にしている場合、エッジにスナップすると点がオブジェクト上にある(Point on object)拘束条件を適用しますが、単に線分上の点を選択するだけでも同じ結果になります。
設定での選択に応じて、寸法のみ、あるいは寸法と位置の両方を、ビュー上で編集できるようにすることが可能です。位置パラメターを入力すると、円の中心や線分の開始点といったものの座標を正確に指定できます。寸法パラメターを入力すると、円の半径や線分の長さや角度と言ったものを正確に指定できます。ビュー上でのパラメター設定は、すべてのツールに対応しているわけではありません。
位置パラメターの入力して円の中心点を指定
寸法パラメターの入力して円の半径を指定
値を入力し、EnterまたはTabで確定すると、その結果として連携して拘束条件を自動的に追加します。例えばX座標とY座標のように、同時に2つのパラメターが表示されている場合、片方だけ値を入力し(訳注:その結果連携して拘束条件が追加される)、他方はビュー上で位置を指定するだけでも構いません(訳注:この場合拘束条件は追加されません)。オブジェクトによっては、完全拘束状態にするには拘束を追加しなければならないことがあります。ビュー上でのパラメター入力に連携した拘束条件は、自動拘束よりも優先されます。
円弧を作成し、ビュー上からすべてのパラメターを設定した結果、関連する拘束が自動的に生成されています。
設定編集中にカーソルの横に座標を表示を有効にしている場合、現在のツールに応じてパラメター(座標、半径、長さ、角度)をカーソルの横に表示します。ビュー上でパラメター設定をしている間は表示されません。
スケッチの編集中に図形を選択するには以下の方法があります。
FreeCADの他のワークベンチと同様、3Dビューw上、クリックで要素を選択できます。スケッチッチャーワークベンチでは、複数の要素を選択する場合に、必ずしもCtrlキーを押す必要はありません。ただし、Ctrlを押すことも可能で、この場合誤って違う場所をクリックしても、それまでの選択がクリアされないという利点があります。辺、点、拘束をこの方法で選択することができます。
3Dビュー上での矩形選択は、共通・矩形選択や共通・矩形要素選択を使わなくても実行できます。
辺、点は矩形選択できますが、拘束条件は矩形選択できません。
3Dビュー上でエッジをダブルクリックすると、その端点に直接または間接に接続されているすべてのエッジを一括選択します。この際、端点が一致拘束されている必要ありません。単に端点が同じ座標であれば、接続されているとみなします。
スケッチャー・ダイアログ では、「要素」セクションのリストでエッジと点を選択できます。同様に、「拘束」セクションで拘束条件を選択できます。
標準的なキーボードショートカットCtrl+C、Ctrl+X、Ctrl+Vでスケッチャー上で選択した要素と拘束をコピー、カット、ペーストできます。これらのツールはスケッチ → スケッチャーツールメニューからも利用できます。同じスケッチ内で使用できるだけでなく、別のスケッチや別のFreeCADインスタンスにペーストすることも可能です。データーはPythonコードの形でクリップボードにコピーされるため、他の(例えばフォーラムで共有する、といった)他の方法でも利用可能です。
各FreeCADのユーザーは自分なりの作業スタイルを確立していくものですが、以下のような一般的な原則に従うと効率的です。
The phenomenon that a fully constrained sketch, usually after a major change to one of its dimensions, reaches an unintended new state is know as "flipping". In the example below, changing one dimension completely changes the shape of the sketch. Note that the sketch with the new shape is still fully constrained.
Original sketch (left), and the same sketch after increasing the 20mm value to 1000mm (right)
This is not always practical, but changing dimension values in smaller increments can work.
The LevenbergMarquardt solver, which is not the default solver, is known to be less prone to flipping. See Sketcher Dialog for more information.
Using horizontal and vertical dimensions instead of equal constraints can prevent flipping. Points constrained by these dimensions will not switch places. In the image above the added (orange) dimensional constraints are linked to the original dimensions via expressions.
Using angular dimensions instead of horizontal and vertical constraints can also work. The angle between edges constrained by angular dimensions will not change. 180° will not become 0°, 90° will not become 270°, etc. In the image all horizontal and vertical constraints have been replaced, but just replacing two is already effective here.
スケッチャー・スクリプティングに、Pythonスクリプトから拘束をどのように作成したらいいのかの例があります。
スケッチャーツールでできることのアイディアが、スケッチャーの例にあります。